package com.ruoyi.wss.dahua.Enum;

/**
 * MAS websocket 请求转发枚举
 * @author 刘国徽(90466)
 */
public enum MasWebsocketEnum {

    /**
     *
     */
    PARKING_FEE_QUERY("mobile.charge.money", "查询停车费用", "???", "httpPostWithJSON"),

    PARKING_FEE_BATCH_QUERY("acquire.batch.charge.money", "批量查询停车费用", "???", "httpPostWithJSON"),

    SCAN_IN_OUT_CODE("mobile.scan.code", "出入口二维码扫码查询", "???", "httpPostWithJSON"),

    TIME_FAVOUR_COMPUTE("ipms.time.favour.compute", "时长优惠券查询费用", "???", "httpPostWithJSON"),
    //暂不支持优惠券下发
    //SYNC_COUPON("sync.coupon.info", "优惠券下发", "", "httpPostWithJSON"),

    CHARGE_NOTIFY("mobile.charge.notice", "缴费成功通知", "???", "httpPostWithJSON"),

    AUTO_PAY_NOTICE("auto.pay.type.notice", "无感支付开通通知", "???", "httpPostWithJSON"),

    PARKING_LOT_INFO_BY_QR_ID("mobile.qr.parking", "根据二维码ID查询车场信息", "???", "httpGet"),

    LEVEL_CODE_CHANGE("level.code.change", "更改权限等级", "/???", "httpPostWithJSON"),

    REMOTE_OPEN_GATE("open.gate", "远程开闸", "???", "httpPostWithJSON"),

    CAR_IN_TIME_CHANGE_FEE("correct.charge.money", "修改入场时间并查询费用", "???", "httpPostWithJSON"),

    MONEY_BLACK_CAR_CONFIG_SYNC("ipms.blackInConfig.sync", "欠费黑名单放行配置下发", "", "doSelf"),

    PARKING_CAR_RECHECK("ipms.car.num.recheck", "在停车辆核对", "???", "httpPostWithJSON"),

    PARKING_CAR_CORRECT("ipms.car.num.correct", "在停车辆矫正", "???", "httpPostWithJSON"),

    PARKING_CAR_FORCE_OUT("ipms.car.num.forceout", "在停车辆强制出场", "???", "httpPostWithJSON"),

    OWNER_INFO_QUERY("ipms.owner.information", "查询车主身份信息", "???", "httpPostWithJSON"),

    IDLE_LOT_SYNC("ipms.carport.sync", "场区余位修改同步", "???", "httpPostWithJSON"),

    MEMBER_SYNC_FULLY("ipms.member.record", "会员卡全量下发", "???", "httpPostWithJSON"),

    MEMBER_SYNC_INCREMENT("ipms.member.increment", "会员卡增量下发", "???", "httpPostWithJSON"),

    BLACK_CAR_SYNC("ipms.black.sync", "黑名单下发", "???", "httpPostWithJSON"),

    WHITE_CAR_SYNC("ipms.white.sync", "白名单下发", "???", "httpPostWithJSON"),

    RESERVATION_RECORD_SYNC("ipms.reservation.sync", "访客预约下发", "???", "httpPostWithJSON"),

    ACCESS_CUR_INFO_BY_VTT_CODE("ipms.caraccesscur.bycondition", "根据VTT设备编码查询过车信息", "???", "httpGet"),

    CAR_NUM_FUZZY_MATCHING("ipms.plate.fuzzymatching", "车牌模糊匹配", "???", "httpPostWithJSON"),

    FUZZY_MATCHING_NOTICE("ipms.notify.fuzzymatchinfo", "模糊匹配确认通知", "???", "httpPostWithJSON"),

    ENTER_RECORD_ADDITION("ipms.addition.enter.record", "进场录入", "???", "httpPostWithJSON"),

    ENTER_RECORD_RECHECK("ipms.recheck.enter.record", "进场矫正", "???", "httpPostWithJSON"),

    EXIT_RECORD_ADDITION("ipms.addition.exit.record", "出场录入", "???", "httpPostWithJSON"),

    EXIT_RECORD_RECHECK("ipms.recheck.exit.record", "出场矫正", "???", "httpPostWithJSON"),

    CAPTURE_SNAP_MANUAL("ipms.car.manual.capture", "手动抓拍", "???", "httpPostWithJSON"),

    CLOUD_SEAT_PROCESS_COMPLETE("ipms.complete.process", "云坐席处理完成", "???", "httpPostWithJSON"),

    ENTER_EXIT_RECORD_ADDITION("ipms.addition.enter.exit.record", "出场补全进出场记录", "???", "httpPostWithJSON"),

    EXIT_CAR_PAY_INFO("ipms.paymoney.bycondition", "查询当前出口道闸车辆的缴费信息", "/???", "httpGet"),

    DEVICE_STATUS_REFRESH("admin.device.refresh", "查询设备当前状态信息", "", "doSelf"),

    STREAM_DEVICE_QUERY("ipms.stream.device.query", "道闸绑定拉流设备查询", "/???", "httpGet"),
    ;


    private final String method;

    private final String description;

    private final String uri;

    private final String actionType;

    MasWebsocketEnum(String method, String description, String uri, String actionType) {
        this.method = method;
        this.description = description;
        this.uri = uri;
        this.actionType = actionType;
    }

    public String getMethod() {
        return method;
    }

    public String getDescription() {
        return description;
    }

    public String getUri() {
        return uri;
    }

    public String getActionType() {
        return actionType;
    }

    public static MasWebsocketEnum getByMethod(String method){
        for (MasWebsocketEnum masWebsocketEnum: values()) {
            if(masWebsocketEnum.getMethod().equals(method)){
                return masWebsocketEnum;
            }
        }
        return null;
    }
}
